define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {

  var Controller = {
    index: function () {
      // 初始化表格参数配置
      Table.api.init({
        extend: {
          index_url: 'business/highsea/index',
          // add_url: 'business/highsea/add',
          // edit_url: 'business/highsea/edit',
          del_url: 'business/highsea/del',
          multi_url: 'business/highsea/multi', // 表格复选框
          table: 'business', // 表名
        }
      });


      var table = $("#table");
      //在普通搜索提交搜索前
      table.on('common-search.bs.table', function (event, table, query) {
        //这里可以获取到普通搜索表单中字段的查询条件
        // console.log(query.filter['source.name']);
        // query.filter['source.name']='云课堂'
        console.log(query);

      });

      // 初始化表格
      table.bootstrapTable({
        // 请求地址
        url: $.fn.bootstrapTable.defaults.extend.index_url,
        // 主键
        pk: 'id',
        // 排序字段
        sortName: 'createtime',
        // 字段配置
        columns: [
          [{
            checkbox: true
          },
          {
            field: 'business.id',
            title: __('ID'),
            formatter: function (value, row, index) {
              return row['id'];
            }
          },
          {
            field: 'nickname',
            title: __('Bnickname'),
            operate: 'LIKE'
          },
          {
            field: 'source.name',
            title: __('Bsourcename'),
            // operate: 'LIKE',
            // align: 'left',
            // operate: 'IN', // 使用IN操作符进行搜索
            // operate: 'FIND_IN_SET',
            // formatter: Table.api.formatter.search,
            // formatter: Table.api.formatter.label,
            searchList: $.getJSON('business/highsea/source'),
          },
          {
            // field: 'gender_text',
            field: 'gender',
            title: __('Bgender'),
            // events: Table.api.events.operate,
            searchList: {
              '0': __('保密'),
              '1': __('男'),
              '2': __('女')
            },
            formatter: function (value, row) {
              let list = { "0": '保密', '1': '男', '2': '女' };
              return list[value];
            }
          },
          {
            // field: 'deal_text',
            field: 'deal',
            title: __('Bdeal'),
            addClass: "deal_css",
            searchList: {
              '0': __('未成交'),
              '1': __('已成交')
            },
            formatter: function (value, row) {
              let list = { "0": '未成交', '1': '已成交' };
              if (value == '0') return '<span style="color: #4E4B5C;">' + list[value] + '</span>';
              else return '<span style="color: #15BA9C;">' + list[value] + '</span>';
            },
          },
          {
            // field: 'auth_text',
            field: 'auth',
            title: __('Bauth'),
            searchList: {
              '0': __('未认证'),
              '1': __('已认证')
            },
            formatter: function (value, row) {
              let list = { "0": '未认证', '1': '已认证' };
              if (value == '0') return '<span style="color: #4E4B5C;">' + list[value] + '</span>';
              else return '<span style="color: #15BA9C;">' + list[value] + '</span>';
            }
          },
          {
            field: 'operate',
            title: __('Operate'),
            table: table,
            events: Table.api.events.operate,
            formatter: Table.api.formatter.operate,
            //按钮组配置
            buttons: [
              {
                name: '申请',
                title: __('申请'),
                classname: 'btn btn-xs btn-success btn-dialog',
                icon: 'fa fa-arrow-down',
                // url: $.fn.bootstrapTable.defaults.extend.orderview_url,
                url: 'business/highsea/apply?status=apply',
                /*  url: function(){
                  return 'business/highsea/apply?status=apply';
                 }, */

                refresh: true, //操作完成后是否刷新列表
              },
              {
                name: '分配',
                title: __('分配'),
                classname: 'btn btn-xs btn-success btn-dialog',
                icon: 'fa fa-arrows-h',
                url: 'business/highsea/apply?status=allot',
                refresh: true, //操作完成后是否刷新列表
              },
            ]
          }
          ]
        ],
        search: false, // 隐藏快速搜索框
        showToggle: false, // 隐藏切换按扭
      });

      //---------------------------

      $(".deal_css").on('click blur', function () {
        console.log(Table.api);
      });

      // 获取选中项
      $(".btn-apply").on("click", function () {
        // Layer.alert(JSON.stringify(Table.api.selecteddata(table)));

        /*  data.forEach(item => {
           console.log(item);
           busArr.push({
             busid: item.id,
             nickname: item.nickname,
           });
         }); */


        // 打开弹框
        /* layer.open({
          type: 2,
          title: '申请',
          content: 'highsea/apply', 
          area: ['800px', '600px'],
          success: function (layero, index) {
          }
        }); */
        /*     layer.confirm('确定要还原吗?', { title: '还原', btn: ['是', '否'] }, function (index) {
        //发送ajax请求
        Backend.api.ajax(
            //请求地址
            { url: `subject/subjectrecycle/reduction?ids=${ids}` },
            //回调函数
            function () {
                // 关闭窗口
                Layer.close(index)

                // 刷新数据表格
                table1.bootstrapTable('refresh')
            }
        )
    }) */
        // $.fn.bootstrapTable.defaults.extend.orderview_url
        // let data = JSON.stringify(Table.api.selecteddata(table));//获取选中的条目的所有内容
        let ids = Table.api.selectedids(table) //获取选中的条目ID集合

        Fast.api.open("business/highsea/apply?status=apply&ids=" + ids, "页面名称", {
          area: ['78%', '95%'],
          callback: function (value) {
            console.log(value);
            //value 就是B页面传输的数据
          }
        })
      });
      $(".btn-allot").on("click", function () {
        let ids = Table.api.selectedids(table) //获取选中的条目ID集合
        Fast.api.open("business/highsea/apply?status=allot&ids=" + ids, "页面名称", {
          area: ['78%', '95%'],
          callback: function (value) {
            console.log(value);
            //value 就是B页面传输的数据
          }
        })
      });

      // 为表格绑定事件
      Table.api.bindevent(table);
    },
    apply: function () {
      Controller.api.bindevent();
    },
    allot: function () {
      Controller.api.bindevent();
    },
    del: function () {
      Controller.api.bindevent();
    },
    api: {
      bindevent: function () {
        Form.api.bindevent($("form[role=form]"));
      }
    }
  };
  return Controller;
});


